Processor frequency has increased over the last ten years tenfold. For example, processor frequency has increased from 133 mH in the mid 1990s to over 1.6 gig today. The increase was accompanied by a steep rise in power consumption, due both to higher operating frequency as well as leakage of the process required for achieving such higher frequencies. Consequently, the danger of a processor overheating has become much more prevalent and requires a throttling mechanism that can provide efficient power reduction at a reasonable performance cost.
Typically, when the processor is detected as having reached a predetermined thermal state, an auto-throttling logic allows shutting down the clock repeatedly for short periods of time (a few microseconds) in various duty cycles (e.g., a fifty percent duty cycle in most implementations), creating effectively a one half frequency clock.
However, the conventional methodology has several limitations. For example, during the “off” period, interrupts typically cannot be served. Only the effective frequency is reduced. The processor still operates at the same voltage as before and therefore both the voltage contribution to the active power and the voltage contribution to the leakage power are not utilized.
Therefore, the throttling typically achieves only a reduction by half the total power (probably much less due to leakage), at a price of typically one half the performance. In cases where the application has driven down the power much beyond the thermal cooling capability, this may not even be enough to cool the processor down effectively.